<?php
require_once("BDD.php");

class ClassPost
{
	////////////////////
	//Properties
	////////////////////

	public $ID;
	public $ID_UtilisateurFrom;
	public $ID_UtilisateurTo;
	public $Date;
	public $Contenu;
	public $IsPublic;
	public $Lien;
	
	
	
	
	////////////////////
	//Fonctions statiques
	////////////////////
	
   
   /*
	Retourne un post (ou false si la suppression n'a pas Ã©tÃ© effectuÃ©e).
	*/
	public static function GetPost($pID_Post)
	{
           $data = BDD::requete("SELECT * FROM posts WHERE ID=" . $pID_Post);
           if ($data != false && $post = mysql_fetch_array($data))
           {
              $newPost = new ClassPost();
              $newPost->ID = $post["ID"];
              $newPost->ID_UtilisateurFrom = $post["ID_Expediteur"];
              $newPost->ID_UtilisateurTo = $post["ID_Destinataire"];
              $newPost->Date = $post["Date"];
              $newPost->Contenu = $post["Contenu"];
              $newPost->IsPublic = $post["Public"];
              $newPost->Lien = $post["Lien"];
              
              return $newPost;
           }
           else
           {
               
              return null;
           }
	}
	
	/*
	Supprime un post (retourne true ou false si la suppression n'a pas Ã©tÃ© effectuÃ©e).
	*/
	public static function DeletePost($pID_Post)
	{
		return BDD::requete("DELETE FROM posts WHERE ID=" . $pID_Post);
	}
	
	/*
	Ajoute un post (retourne true ou false si l'ajout n'a pas Ã©tÃ© effectuÃ©).
	*/
	public static function AddPost($pID_UtilisateurFrom, $pID_UtilisateurTo, $pContenu, $pIsPublic, $pLien)
	{
		return BDD::requete("INSERT INTO posts(ID_Expediteur, ID_Destinataire, Date, Contenu, Public, Lien) VALUES('" . $pID_UtilisateurFrom . "', '" . $pID_UtilisateurTo . "', CURDATE(), '" . htmlspecialchars($pContenu, ENT_NOQUOTES) . "', '" . $pIsPublic . "', '" . $pLien . "')");
	}
   
   
	/*
	Modification d'un post
	*/
	public static function EditPost($pID_Post, $pID_UtilisateurFrom, $pID_UtilisateurTo, $pDate, $pContenu, $pIsPublic, $pLien)
	{
		$requete = "UPDATE posts SET ";
		$requete .= "ID_Expediteur=\"" . $pID_UtilisateurFrom . "\", ";
		$requete .= "ID_Destinataire=\"" . $pID_UtilisateurTo . "\", ";
		$requete .= "Date=\"" . $pDate . "\", ";
		$requete .= "Contenu=\"" . $pContenu . "\", ";
		$requete .= "Public=\"" . $pIsPublic . "\", ";
		$requete .= "Lien=\"" . $pLien . "\", ";
		$requete .= "WHERE ID=\"" . $pID_Post . "\"";

        return BDD::requete($requete);
	}
}

?>